Org.JSON লাইব্রেরি Java-তে JSON ডেটা ম্যানিপুলেশন করার জন্য অত্যন্ত কার্যকরী। JSON অবজেক্ট বা অ্যারে থেকে ডেটা ফিল্টার করার জন্য Org.JSON এর কিছু শক্তিশালী ফিচার ব্যবহার করা যেতে পারে। যখন আপনি একটি JSON অবজেক্ট বা অ্যারে থেকে নির্দিষ্ট কীগুলির মান বা উপাদান এক্সট্র্যাক্ট করতে চান, তখন আপনি JSON ফিল্টারিং ব্যবহার করতে পারেন।
JSON Object/Array থেকে ডেটা ফিল্টার করার জন্য প্রয়োজনীয় স্টেপ
- JSON অবজেক্ট থেকে নির্দিষ্ট কীগুলোর মান ফিল্টার করা: যখন একটি JSON অবজেক্টে অনেক কিপেয়ার থাকে এবং আপনি শুধুমাত্র কিছু কিপেয়ার বের করতে চান।
- JSON অ্যারে থেকে নির্দিষ্ট আইটেম ফিল্টার করা: যদি JSON অ্যারে থাকে এবং আপনি এর মধ্যে থেকে নির্দিষ্ট আইটেমগুলো বের করতে চান।
উদাহরণ ১: JSON Object থেকে ডেটা ফিল্টার করা
ধরা যাক, আপনার কাছে একটি JSON অবজেক্ট রয়েছে এবং আপনি শুধুমাত্র কিছু নির্দিষ্ট কীগুলোর মান বের করতে চান।
import org.json.JSONObject;
public class JsonObjectFilterExample {
public static void main(String[] args) {
// একটি JSON অবজেক্ট তৈরি
String jsonString = "{ \"name\": \"John\", \"age\": 30, \"city\": \"New York\", \"email\": \"john@example.com\" }";
JSONObject jsonObject = new JSONObject(jsonString);
// শুধুমাত্র নির্দিষ্ট কীগুলোর মান ফিল্টার করা
String name = jsonObject.getString("name");
String city = jsonObject.getString("city");
// ফিল্টার করা ডেটা প্রিন্ট করা
System.out.println("Name: " + name);
System.out.println("City: " + city);
}
}
কোড ব্যাখ্যা:
jsonObject.getString("key"): এই মেথড ব্যবহার করে আপনি JSON অবজেক্টের নির্দিষ্ট কীর মান বের করতে পারেন।- এখানে
"name"এবং"city"কীগুলোর মান এক্সট্র্যাক্ট করা হয়েছে।
আউটপুট:
Name: John
City: New York
এখানে আমরা শুধু name এবং city কীগুলোর মান ফিল্টার করেছি।
উদাহরণ ২: JSON Array থেকে ডেটা ফিল্টার করা
ধরা যাক, আপনার কাছে একটি JSON অ্যারে রয়েছে এবং আপনি তার মধ্যে থেকে কিছু নির্দিষ্ট আইটেম বের করতে চান। এখানে একটি উদাহরণ দেওয়া হলো যেখানে একটি JSON অ্যারে থেকে নির্দিষ্ট মান ফিল্টার করা হয়েছে।
import org.json.JSONArray;
public class JsonArrayFilterExample {
public static void main(String[] args) {
// একটি JSON অ্যারে তৈরি
String jsonArrayString = "[\"Apple\", \"Banana\", \"Orange\", \"Grapes\"]";
JSONArray jsonArray = new JSONArray(jsonArrayString);
// JSON অ্যারে থেকে নির্দিষ্ট মান ফিল্টার করা
for (int i = 0; i < jsonArray.length(); i++) {
String fruit = jsonArray.getString(i);
// শুধুমাত্র 'Banana' এবং 'Orange' ফিল্টার করা
if (fruit.equals("Banana") || fruit.equals("Orange")) {
System.out.println("Filtered Fruit: " + fruit);
}
}
}
}
কোড ব্যাখ্যা:
jsonArray.getString(i): এই মেথড ব্যবহার করে JSON অ্যারের নির্দিষ্ট ইনডেক্স থেকে মান এক্সট্র্যাক্ট করা হয়।if (fruit.equals("Banana") || fruit.equals("Orange")): এই শর্তে শুধুমাত্র "Banana" এবং "Orange" ফিল্টার করা হয়েছে।
আউটপুট:
Filtered Fruit: Banana
Filtered Fruit: Orange
এখানে আমরা JSON অ্যারে থেকে শুধু Banana এবং Orange ফিল্টার করেছি।
উদাহরণ ৩: JSON Array থেকে অবজেক্ট ফিল্টার করা
যদি JSON অ্যারে একটি অবজেক্ট ধারণ করে, এবং আপনি সেই অবজেক্টের কিছু নির্দিষ্ট কীগুলোর মান ফিল্টার করতে চান, তাহলে নিচের মতো করতে পারেন।
import org.json.JSONArray;
import org.json.JSONObject;
public class JsonArrayObjectFilterExample {
public static void main(String[] args) {
// JSON অ্যারে তৈরি
String jsonArrayString = "[{\"name\": \"John\", \"age\": 30}, {\"name\": \"Jane\", \"age\": 25}, {\"name\": \"Mike\", \"age\": 35}]";
JSONArray jsonArray = new JSONArray(jsonArrayString);
// JSON অ্যারে থেকে অবজেক্ট ফিল্টার করা
for (int i = 0; i < jsonArray.length(); i++) {
JSONObject person = jsonArray.getJSONObject(i);
int age = person.getInt("age");
// যদি বয়স 30 বা তার বেশি হয়, তবে ফিল্টার করা
if (age >= 30) {
String name = person.getString("name");
System.out.println("Filtered Name: " + name + ", Age: " + age);
}
}
}
}
কোড ব্যাখ্যা:
jsonArray.getJSONObject(i): এই মেথড ব্যবহার করে JSON অ্যারে থেকে একটি অবজেক্ট এক্সট্র্যাক্ট করা হয়েছে।person.getInt("age"): অবজেক্টেরageকীর মান বের করা হয়েছে।- শর্ত: বয়স 30 বা তার বেশি হলে সেই অবজেক্ট ফিল্টার করা হয়েছে।
আউটপুট:
Filtered Name: John, Age: 30
Filtered Name: Mike, Age: 35
এখানে JSON অ্যারে থেকে অবজেক্ট ফিল্টার করে age >= 30 শর্তের সাথে মিলিয়ে নাম এবং বয়স প্রিন্ট করা হয়েছে।
সারাংশ
Org.JSON লাইব্রেরি Java-তে JSON ডেটা ম্যানিপুলেশনের জন্য একটি শক্তিশালী টুল। JSON অবজেক্ট বা অ্যারে থেকে ডেটা ফিল্টার করতে getString(), getInt(), getJSONObject(), ইত্যাদি মেথড ব্যবহার করা যায়। JSON অবজেক্ট থেকে নির্দিষ্ট কীগুলোর মান এক্সট্র্যাক্ট এবং JSON অ্যারে থেকে নির্দিষ্ট আইটেম বা অবজেক্ট ফিল্টার করা সম্ভব। এটি API ডেটা প্রসেসিং এবং ডেটাবেস অপারেশনসের জন্য অত্যন্ত কার্যকরী।